<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    CSRF 漏洞的基本防護措施有哪些


    發現錯別字 11個月前 提問
    回答
    1
    瀏覽
    1326
    請勿發布不友善或者負能量的內容。與人為善,比聰明更重要!
    回答數量: 1
    等保中級測評師 CICSA

    CSRF漏洞的基本防護措施有以下這些:

    • 避免在URL中明文顯示:特定操作的參數內容在URL中明文顯示特定操作的參數內容,當該Web應用系統存在CSRF漏洞時,能使攻擊者很容易地使用該漏洞對Web應用系統進行攻擊。

    • 驗證HTTP頭部Referer信息:驗證HTTP頭部Referer信息,是防止CSRF攻擊最簡單易行的一種手段。根據RFC對HTTP協議里Referer的定義,Referer信息跟隨出現在每個HTTP請求頭部。服務器端在收到請求之后,可以去檢查這個頭信息,只接受來自本域的請求而忽略外部域的請求。

    • 在請求地址中添加token并驗證:可以在HTTP請求中以參數的形式加入一個隨機產生的token,并在服務器端建立一個攔截器來驗證這個token。如果請求中沒有token或者token內容不正確,則認為可能是CSRF攻擊而拒絕該請求。

    • 在HTTP頭中自定義屬性并驗證:這種方法的實質也是使用token并進行驗證,不過和上一種方法不同的是,這里并不是把token以參數的形式置于HTTP請求之中,而是把它放到HTTP頭中自定義的屬性里。通過XMLHttpRequest這個類,可以一次性給所有該類請求加上csrftoken這個HTTP頭屬性,并把token值放入其中。這種方法解決了上一種方法在請求中加入token的不便,同時,通過XMLHttpRequest請求的地址不會被記錄到瀏覽器的地址欄,也不用擔心token會通過Referer泄露到其他網站中去。

    • 要求用戶提交額外的驗證信息:執行重要業務之前,要求用戶提交額外的驗證信息。例如要求用戶在進行重要業務前輸入口令或圖形驗證碼,強制用戶必須與應用進行交互,才能完成最終的請求。但是驗證碼并非萬能,很多時候,出于用戶體驗考慮,網站不能給所有的操作都加上驗證碼。因此驗證碼只能作為防御CSRF的一種輔助手段,而不能作為最主要的解決方案。

    回答所涉及的環境:聯想天逸510S、Windows 10。

    11個月前 / 評論
    亚洲 欧美 自拍 唯美 另类